class Login {
    // 上一个页面
    returnUrl = ""
    constructor() {
        this.bindEve()
    }
    // 绑定事件
    bindEve() {
        this.$('.over').addEventListener('click', this.logind.bind(this))
    }
    // 登录
    logind() {
        let form = document.forms.login.elements
        // console.log(form);
        // 获取value值
        let uname = form.uname.value.trim();
        let password = form.password.value.trim();
        console.log(uname, password);
        // 非空验证
        if (uname == "") {
            layer.tips('用户名不能为空', form.uname);
            return
        }
        if (password == "") {
            layer.tips('密码不能为空', form.password);
            return
        }
        // 发送请求
        this.axios(uname, password)
    }
    // 获取用户信息
    async axios(username, password) {
        axios.defaults.headers['Content-Type'] = 'application/x-www-form-urlencoded';
        let pra = `username=${username}&password=${password}`
        let {
            status,
            data
        } = await axios.post('http://localhost:8888/users/login', pra)
        // 判断服务器状态
        if (status != 200 && data.code != 1) return
        // 将用户id和token保存到本地
        localStorage.setItem('id', data.user.id);
        localStorage.setItem('token', data.token)
        localStorage.setItem('uname', data.user.nickname)
        // 跳转页面 returnUrl判断用哪个页面跳转的 没有就返回首页
        this.returnUrl ? location.assign('this.returnUrl') : location.assign('./index.html')
    }
    // 封装获取节点的方法
    $(ele) {
        let res = document.querySelectorAll(ele);
        return res.length == 1 ? res[0] : res;
    }
}
new Login